/*
 *
 * Copyright (c) 2001-2017 泛微软件.
 * 泛微协同商务系统,版权所有.
 * 
 */
package com.weaver.integration.ldap.sync.formart;

import com.alibaba.fastjson.JSONObject;
import com.api.integration.ldap.bean.LdapBaseBean;

import javax.naming.NamingException;
import java.io.UnsupportedEncodingException;
import java.util.Map;

/**
 * <p>Title: ${file_name}</p>
 * <p>Description: 设置AD密码</p>
 *
 * @author SJZ
 * @version 1.0
 * @date 2017/8/10
 */
public class OA2LdapUserPasswordFormart implements OaFormart {
    /**
     * 数据转换方法
     *
     * @param baseBean
     * @param data     OA 节点信息
     * @param params   JSON格式的自定义参数信息
     * @return
     */
    @Override
    public byte[] formart( LdapBaseBean baseBean, Map<String, String> data, String params ) throws NamingException {

        JSONObject jsonObject = JSONObject.parseObject(params);

        String password = jsonObject.getString("password");

        String newQuotedPassword = "\"" + password +"\"";

        try {
            byte[] newUnicodePassword =newQuotedPassword.getBytes("UTF-16LE");

            return newUnicodePassword;
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return null;
    }

    /**
     * 获取转换结果 转换失败后会记录该数据待数据同步完成后再次处理
     *
     * @return
     */
    @Override
    public boolean getStatus() {
        return true;
    }
}
